#include <behaviortree_cpp/bt_factory.h>
#include <fishbot_behavior_tree/behavior_context.hpp>
#include <fishbot_behavior_tree/shared_resources_node_loader.hpp>

#include "fishbot_generic_behaviors/get_geometry_msgs.hpp"

namespace fishbot::behaviors
{
    class GenericBehaviorLoader : public fishbot::behavior_tree::SharedResourcesNodeLoaderBase
    {
    public:
        void registerBehaviors(BT::BehaviorTreeFactory &factory,
                               const std::shared_ptr<fishbot::behavior_tree::BehaviorContext> &shared_resources) override
        {
            fishbot::behavior_tree::registerBehaviorNotSharedResources<GetPoseStampedMsg>(factory, "GetPoseStampedMsg", shared_resources);

        }
    };
}

#include <pluginlib/class_list_macros.hpp>
PLUGINLIB_EXPORT_CLASS(fishbot::behaviors::GenericBehaviorLoader, fishbot::behavior_tree::SharedResourcesNodeLoaderBase)